
sig:     file format elf64-x86-64


Disassembly of section .init:

0000000000001000 <_init>:
    1000:	f3 0f 1e fa          	endbr64 
    1004:	48 83 ec 08          	sub    $0x8,%rsp
    1008:	48 8b 05 d9 2f 00 00 	mov    0x2fd9(%rip),%rax        # 3fe8 <__gmon_start__>
    100f:	48 85 c0             	test   %rax,%rax
    1012:	74 02                	je     1016 <_init+0x16>
    1014:	ff d0                	callq  *%rax
    1016:	48 83 c4 08          	add    $0x8,%rsp
    101a:	c3                   	retq   

Disassembly of section .plt:

0000000000001020 <.plt>:
    1020:	ff 35 42 2f 00 00    	pushq  0x2f42(%rip)        # 3f68 <_GLOBAL_OFFSET_TABLE_+0x8>
    1026:	f2 ff 25 43 2f 00 00 	bnd jmpq *0x2f43(%rip)        # 3f70 <_GLOBAL_OFFSET_TABLE_+0x10>
    102d:	0f 1f 00             	nopl   (%rax)
    1030:	f3 0f 1e fa          	endbr64 
    1034:	68 00 00 00 00       	pushq  $0x0
    1039:	f2 e9 e1 ff ff ff    	bnd jmpq 1020 <.plt>
    103f:	90                   	nop
    1040:	f3 0f 1e fa          	endbr64 
    1044:	68 01 00 00 00       	pushq  $0x1
    1049:	f2 e9 d1 ff ff ff    	bnd jmpq 1020 <.plt>
    104f:	90                   	nop
    1050:	f3 0f 1e fa          	endbr64 
    1054:	68 02 00 00 00       	pushq  $0x2
    1059:	f2 e9 c1 ff ff ff    	bnd jmpq 1020 <.plt>
    105f:	90                   	nop
    1060:	f3 0f 1e fa          	endbr64 
    1064:	68 03 00 00 00       	pushq  $0x3
    1069:	f2 e9 b1 ff ff ff    	bnd jmpq 1020 <.plt>
    106f:	90                   	nop
    1070:	f3 0f 1e fa          	endbr64 
    1074:	68 04 00 00 00       	pushq  $0x4
    1079:	f2 e9 a1 ff ff ff    	bnd jmpq 1020 <.plt>
    107f:	90                   	nop
    1080:	f3 0f 1e fa          	endbr64 
    1084:	68 05 00 00 00       	pushq  $0x5
    1089:	f2 e9 91 ff ff ff    	bnd jmpq 1020 <.plt>
    108f:	90                   	nop
    1090:	f3 0f 1e fa          	endbr64 
    1094:	68 06 00 00 00       	pushq  $0x6
    1099:	f2 e9 81 ff ff ff    	bnd jmpq 1020 <.plt>
    109f:	90                   	nop
    10a0:	f3 0f 1e fa          	endbr64 
    10a4:	68 07 00 00 00       	pushq  $0x7
    10a9:	f2 e9 71 ff ff ff    	bnd jmpq 1020 <.plt>
    10af:	90                   	nop
    10b0:	f3 0f 1e fa          	endbr64 
    10b4:	68 08 00 00 00       	pushq  $0x8
    10b9:	f2 e9 61 ff ff ff    	bnd jmpq 1020 <.plt>
    10bf:	90                   	nop
    10c0:	f3 0f 1e fa          	endbr64 
    10c4:	68 09 00 00 00       	pushq  $0x9
    10c9:	f2 e9 51 ff ff ff    	bnd jmpq 1020 <.plt>
    10cf:	90                   	nop

Disassembly of section .plt.got:

00000000000010d0 <__cxa_finalize@plt>:
    10d0:	f3 0f 1e fa          	endbr64 
    10d4:	f2 ff 25 ed 2e 00 00 	bnd jmpq *0x2eed(%rip)        # 3fc8 <__cxa_finalize@GLIBC_2.2.5>
    10db:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

Disassembly of section .plt.sec:

00000000000010e0 <write@plt>:
    10e0:	f3 0f 1e fa          	endbr64 
    10e4:	f2 ff 25 8d 2e 00 00 	bnd jmpq *0x2e8d(%rip)        # 3f78 <write@GLIBC_2.2.5>
    10eb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

00000000000010f0 <sigismember@plt>:
    10f0:	f3 0f 1e fa          	endbr64 
    10f4:	f2 ff 25 85 2e 00 00 	bnd jmpq *0x2e85(%rip)        # 3f80 <sigismember@GLIBC_2.2.5>
    10fb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

0000000000001100 <__cxa_atexit@plt>:
    1100:	f3 0f 1e fa          	endbr64 
    1104:	f2 ff 25 7d 2e 00 00 	bnd jmpq *0x2e7d(%rip)        # 3f88 <__cxa_atexit@GLIBC_2.2.5>
    110b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

0000000000001110 <_ZdlPv@plt>:
    1110:	f3 0f 1e fa          	endbr64 
    1114:	f2 ff 25 75 2e 00 00 	bnd jmpq *0x2e75(%rip)        # 3f90 <_ZdlPv@GLIBCXX_3.4>
    111b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

0000000000001120 <_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@plt>:
    1120:	f3 0f 1e fa          	endbr64 
    1124:	f2 ff 25 6d 2e 00 00 	bnd jmpq *0x2e6d(%rip)        # 3f98 <_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@GLIBCXX_3.4>
    112b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

0000000000001130 <_ZNSolsEPFRSoS_E@plt>:
    1130:	f3 0f 1e fa          	endbr64 
    1134:	f2 ff 25 65 2e 00 00 	bnd jmpq *0x2e65(%rip)        # 3fa0 <_ZNSolsEPFRSoS_E@GLIBCXX_3.4>
    113b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

0000000000001140 <exit@plt>:
    1140:	f3 0f 1e fa          	endbr64 
    1144:	f2 ff 25 5d 2e 00 00 	bnd jmpq *0x2e5d(%rip)        # 3fa8 <exit@GLIBC_2.2.5>
    114b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

0000000000001150 <getpid@plt>:
    1150:	f3 0f 1e fa          	endbr64 
    1154:	f2 ff 25 55 2e 00 00 	bnd jmpq *0x2e55(%rip)        # 3fb0 <getpid@GLIBC_2.2.5>
    115b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

0000000000001160 <_ZNSt8ios_base4InitC1Ev@plt>:
    1160:	f3 0f 1e fa          	endbr64 
    1164:	f2 ff 25 4d 2e 00 00 	bnd jmpq *0x2e4d(%rip)        # 3fb8 <_ZNSt8ios_base4InitC1Ev@GLIBCXX_3.4>
    116b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

0000000000001170 <_ZNSolsEi@plt>:
    1170:	f3 0f 1e fa          	endbr64 
    1174:	f2 ff 25 45 2e 00 00 	bnd jmpq *0x2e45(%rip)        # 3fc0 <_ZNSolsEi@GLIBCXX_3.4>
    117b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)

Disassembly of section .text:

0000000000001180 <_start>:
    1180:	f3 0f 1e fa          	endbr64 
    1184:	31 ed                	xor    %ebp,%ebp
    1186:	49 89 d1             	mov    %rdx,%r9
    1189:	5e                   	pop    %rsi
    118a:	48 89 e2             	mov    %rsp,%rdx
    118d:	48 83 e4 f0          	and    $0xfffffffffffffff0,%rsp
    1191:	50                   	push   %rax
    1192:	54                   	push   %rsp
    1193:	4c 8d 05 f6 06 00 00 	lea    0x6f6(%rip),%r8        # 1890 <__libc_csu_fini>
    119a:	48 8d 0d 7f 06 00 00 	lea    0x67f(%rip),%rcx        # 1820 <__libc_csu_init>
    11a1:	48 8d 3d 40 02 00 00 	lea    0x240(%rip),%rdi        # 13e8 <main>
    11a8:	ff 15 32 2e 00 00    	callq  *0x2e32(%rip)        # 3fe0 <__libc_start_main@GLIBC_2.2.5>
    11ae:	f4                   	hlt    
    11af:	90                   	nop

00000000000011b0 <deregister_tm_clones>:
    11b0:	48 8d 3d 61 2e 00 00 	lea    0x2e61(%rip),%rdi        # 4018 <__TMC_END__>
    11b7:	48 8d 05 5a 2e 00 00 	lea    0x2e5a(%rip),%rax        # 4018 <__TMC_END__>
    11be:	48 39 f8             	cmp    %rdi,%rax
    11c1:	74 15                	je     11d8 <deregister_tm_clones+0x28>
    11c3:	48 8b 05 0e 2e 00 00 	mov    0x2e0e(%rip),%rax        # 3fd8 <_ITM_deregisterTMCloneTable>
    11ca:	48 85 c0             	test   %rax,%rax
    11cd:	74 09                	je     11d8 <deregister_tm_clones+0x28>
    11cf:	ff e0                	jmpq   *%rax
    11d1:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
    11d8:	c3                   	retq   
    11d9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

00000000000011e0 <register_tm_clones>:
    11e0:	48 8d 3d 31 2e 00 00 	lea    0x2e31(%rip),%rdi        # 4018 <__TMC_END__>
    11e7:	48 8d 35 2a 2e 00 00 	lea    0x2e2a(%rip),%rsi        # 4018 <__TMC_END__>
    11ee:	48 29 fe             	sub    %rdi,%rsi
    11f1:	48 89 f0             	mov    %rsi,%rax
    11f4:	48 c1 ee 3f          	shr    $0x3f,%rsi
    11f8:	48 c1 f8 03          	sar    $0x3,%rax
    11fc:	48 01 c6             	add    %rax,%rsi
    11ff:	48 d1 fe             	sar    %rsi
    1202:	74 14                	je     1218 <register_tm_clones+0x38>
    1204:	48 8b 05 e5 2d 00 00 	mov    0x2de5(%rip),%rax        # 3ff0 <_ITM_registerTMCloneTable>
    120b:	48 85 c0             	test   %rax,%rax
    120e:	74 08                	je     1218 <register_tm_clones+0x38>
    1210:	ff e0                	jmpq   *%rax
    1212:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
    1218:	c3                   	retq   
    1219:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

0000000000001220 <__do_global_dtors_aux>:
    1220:	f3 0f 1e fa          	endbr64 
    1224:	80 3d 25 2f 00 00 00 	cmpb   $0x0,0x2f25(%rip)        # 4150 <completed.8061>
    122b:	75 2b                	jne    1258 <__do_global_dtors_aux+0x38>
    122d:	55                   	push   %rbp
    122e:	48 83 3d 92 2d 00 00 	cmpq   $0x0,0x2d92(%rip)        # 3fc8 <__cxa_finalize@GLIBC_2.2.5>
    1235:	00 
    1236:	48 89 e5             	mov    %rsp,%rbp
    1239:	74 0c                	je     1247 <__do_global_dtors_aux+0x27>
    123b:	48 8b 3d c6 2d 00 00 	mov    0x2dc6(%rip),%rdi        # 4008 <__dso_handle>
    1242:	e8 89 fe ff ff       	callq  10d0 <__cxa_finalize@plt>
    1247:	e8 64 ff ff ff       	callq  11b0 <deregister_tm_clones>
    124c:	c6 05 fd 2e 00 00 01 	movb   $0x1,0x2efd(%rip)        # 4150 <completed.8061>
    1253:	5d                   	pop    %rbp
    1254:	c3                   	retq   
    1255:	0f 1f 00             	nopl   (%rax)
    1258:	c3                   	retq   
    1259:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

0000000000001260 <frame_dummy>:
    1260:	f3 0f 1e fa          	endbr64 
    1264:	e9 77 ff ff ff       	jmpq   11e0 <register_tm_clones>

0000000000001269 <_Z2t1v>:
//     alarm(1); //一次性闹钟，超时会被自动取消
//     // exit(0);
// }

void t1()
{
    1269:	f3 0f 1e fa          	endbr64 
    126d:	55                   	push   %rbp
    126e:	48 89 e5             	mov    %rsp,%rbp
    std::cout << "我是任务1" << std::endl;
    1271:	48 8d 35 8f 0d 00 00 	lea    0xd8f(%rip),%rsi        # 2007 <_ZStL6ignore+0x1>
    1278:	48 8d 3d c1 2d 00 00 	lea    0x2dc1(%rip),%rdi        # 4040 <_ZSt4cout@@GLIBCXX_3.4>
    127f:	e8 9c fe ff ff       	callq  1120 <_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@plt>
    1284:	48 89 c2             	mov    %rax,%rdx
    1287:	48 8b 05 42 2d 00 00 	mov    0x2d42(%rip),%rax        # 3fd0 <_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GLIBCXX_3.4>
    128e:	48 89 c6             	mov    %rax,%rsi
    1291:	48 89 d7             	mov    %rdx,%rdi
    1294:	e8 97 fe ff ff       	callq  1130 <_ZNSolsEPFRSoS_E@plt>
}
    1299:	90                   	nop
    129a:	5d                   	pop    %rbp
    129b:	c3                   	retq   

000000000000129c <_Z2t2v>:
void t2()
{
    129c:	f3 0f 1e fa          	endbr64 
    12a0:	55                   	push   %rbp
    12a1:	48 89 e5             	mov    %rsp,%rbp
    std::cout << "我是任务2" << std::endl;
    12a4:	48 8d 35 6a 0d 00 00 	lea    0xd6a(%rip),%rsi        # 2015 <_ZStL6ignore+0xf>
    12ab:	48 8d 3d 8e 2d 00 00 	lea    0x2d8e(%rip),%rdi        # 4040 <_ZSt4cout@@GLIBCXX_3.4>
    12b2:	e8 69 fe ff ff       	callq  1120 <_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@plt>
    12b7:	48 89 c2             	mov    %rax,%rdx
    12ba:	48 8b 05 0f 2d 00 00 	mov    0x2d0f(%rip),%rax        # 3fd0 <_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GLIBCXX_3.4>
    12c1:	48 89 c6             	mov    %rax,%rsi
    12c4:	48 89 d7             	mov    %rdx,%rdi
    12c7:	e8 64 fe ff ff       	callq  1130 <_ZNSolsEPFRSoS_E@plt>
}
    12cc:	90                   	nop
    12cd:	5d                   	pop    %rbp
    12ce:	c3                   	retq   

00000000000012cf <_Z2t3v>:
void t3()
{
    12cf:	f3 0f 1e fa          	endbr64 
    12d3:	55                   	push   %rbp
    12d4:	48 89 e5             	mov    %rsp,%rbp
    std::cout << "我是任务3" << std::endl;
    12d7:	48 8d 35 45 0d 00 00 	lea    0xd45(%rip),%rsi        # 2023 <_ZStL6ignore+0x1d>
    12de:	48 8d 3d 5b 2d 00 00 	lea    0x2d5b(%rip),%rdi        # 4040 <_ZSt4cout@@GLIBCXX_3.4>
    12e5:	e8 36 fe ff ff       	callq  1120 <_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@plt>
    12ea:	48 89 c2             	mov    %rax,%rdx
    12ed:	48 8b 05 dc 2c 00 00 	mov    0x2cdc(%rip),%rax        # 3fd0 <_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GLIBCXX_3.4>
    12f4:	48 89 c6             	mov    %rax,%rsi
    12f7:	48 89 d7             	mov    %rdx,%rdi
    12fa:	e8 31 fe ff ff       	callq  1130 <_ZNSolsEPFRSoS_E@plt>
}
    12ff:	90                   	nop
    1300:	5d                   	pop    %rbp
    1301:	c3                   	retq   

0000000000001302 <_Z7handleri>:
void handler(int signo)
{
    1302:	f3 0f 1e fa          	endbr64 
    1306:	55                   	push   %rbp
    1307:	48 89 e5             	mov    %rsp,%rbp
    130a:	48 83 ec 10          	sub    $0x10,%rsp
    130e:	89 7d fc             	mov    %edi,-0x4(%rbp)
    std::cout << "signo: " << signo << std::endl;
    1311:	48 8d 35 19 0d 00 00 	lea    0xd19(%rip),%rsi        # 2031 <_ZStL6ignore+0x2b>
    1318:	48 8d 3d 21 2d 00 00 	lea    0x2d21(%rip),%rdi        # 4040 <_ZSt4cout@@GLIBCXX_3.4>
    131f:	e8 fc fd ff ff       	callq  1120 <_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@plt>
    1324:	48 89 c2             	mov    %rax,%rdx
    1327:	8b 45 fc             	mov    -0x4(%rbp),%eax
    132a:	89 c6                	mov    %eax,%esi
    132c:	48 89 d7             	mov    %rdx,%rdi
    132f:	e8 3c fe ff ff       	callq  1170 <_ZNSolsEi@plt>
    1334:	48 89 c2             	mov    %rax,%rdx
    1337:	48 8b 05 92 2c 00 00 	mov    0x2c92(%rip),%rax        # 3fd0 <_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GLIBCXX_3.4>
    133e:	48 89 c6             	mov    %rax,%rsi
    1341:	48 89 d7             	mov    %rdx,%rdi
    1344:	e8 e7 fd ff ff       	callq  1130 <_ZNSolsEPFRSoS_E@plt>
    exit(1);
    1349:	bf 01 00 00 00       	mov    $0x1,%edi
    134e:	e8 ed fd ff ff       	callq  1140 <exit@plt>

0000000000001353 <_Z12PrintPendingR10__sigset_t>:
}
void PrintPending(sigset_t& block)
{
    1353:	f3 0f 1e fa          	endbr64 
    1357:	55                   	push   %rbp
    1358:	48 89 e5             	mov    %rsp,%rbp
    135b:	53                   	push   %rbx
    135c:	48 83 ec 28          	sub    $0x28,%rsp
    1360:	48 89 7d d8          	mov    %rdi,-0x28(%rbp)
    std::cout << "pending status: [" << getpid() << "]: ";
    1364:	48 8d 35 ce 0c 00 00 	lea    0xcce(%rip),%rsi        # 2039 <_ZStL6ignore+0x33>
    136b:	48 8d 3d ce 2c 00 00 	lea    0x2cce(%rip),%rdi        # 4040 <_ZSt4cout@@GLIBCXX_3.4>
    1372:	e8 a9 fd ff ff       	callq  1120 <_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@plt>
    1377:	48 89 c3             	mov    %rax,%rbx
    137a:	e8 d1 fd ff ff       	callq  1150 <getpid@plt>
    137f:	89 c6                	mov    %eax,%esi
    1381:	48 89 df             	mov    %rbx,%rdi
    1384:	e8 e7 fd ff ff       	callq  1170 <_ZNSolsEi@plt>
    1389:	48 8d 35 bb 0c 00 00 	lea    0xcbb(%rip),%rsi        # 204b <_ZStL6ignore+0x45>
    1390:	48 89 c7             	mov    %rax,%rdi
    1393:	e8 88 fd ff ff       	callq  1120 <_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@plt>
    for (int i = 31; i > 0; i--)
    1398:	c7 45 ec 1f 00 00 00 	movl   $0x1f,-0x14(%rbp)
    139f:	83 7d ec 00          	cmpl   $0x0,-0x14(%rbp)
    13a3:	7e 25                	jle    13ca <_Z12PrintPendingR10__sigset_t+0x77>
    {
        std::cout << sigismember(&block,i);
    13a5:	8b 55 ec             	mov    -0x14(%rbp),%edx
    13a8:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
    13ac:	89 d6                	mov    %edx,%esi
    13ae:	48 89 c7             	mov    %rax,%rdi
    13b1:	e8 3a fd ff ff       	callq  10f0 <sigismember@plt>
    13b6:	89 c6                	mov    %eax,%esi
    13b8:	48 8d 3d 81 2c 00 00 	lea    0x2c81(%rip),%rdi        # 4040 <_ZSt4cout@@GLIBCXX_3.4>
    13bf:	e8 ac fd ff ff       	callq  1170 <_ZNSolsEi@plt>
    for (int i = 31; i > 0; i--)
    13c4:	83 6d ec 01          	subl   $0x1,-0x14(%rbp)
    13c8:	eb d5                	jmp    139f <_Z12PrintPendingR10__sigset_t+0x4c>
    }
    std::cout << std::endl;
    13ca:	48 8b 05 ff 2b 00 00 	mov    0x2bff(%rip),%rax        # 3fd0 <_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GLIBCXX_3.4>
    13d1:	48 89 c6             	mov    %rax,%rsi
    13d4:	48 8d 3d 65 2c 00 00 	lea    0x2c65(%rip),%rdi        # 4040 <_ZSt4cout@@GLIBCXX_3.4>
    13db:	e8 50 fd ff ff       	callq  1130 <_ZNSolsEPFRSoS_E@plt>
}
    13e0:	90                   	nop
    13e1:	48 83 c4 28          	add    $0x28,%rsp
    13e5:	5b                   	pop    %rbx
    13e6:	5d                   	pop    %rbp
    13e7:	c3                   	retq   

00000000000013e8 <main>:
int main()
{
    13e8:	f3 0f 1e fa          	endbr64 
    13ec:	55                   	push   %rbp
    13ed:	48 89 e5             	mov    %rsp,%rbp
    write(1,"123456",5);
    13f0:	ba 05 00 00 00       	mov    $0x5,%edx
    13f5:	48 8d 35 53 0c 00 00 	lea    0xc53(%rip),%rsi        # 204f <_ZStL6ignore+0x49>
    13fc:	bf 01 00 00 00       	mov    $0x1,%edi
    1401:	e8 da fc ff ff       	callq  10e0 <write@plt>
    //     // sleep(1);
    //     // raise(2);
    //     // abort();
    // }

    return 0;
    1406:	b8 00 00 00 00       	mov    $0x0,%eax
}
    140b:	5d                   	pop    %rbp
    140c:	c3                   	retq   

000000000000140d <_Z41__static_initialization_and_destruction_0ii>:
    140d:	f3 0f 1e fa          	endbr64 
    1411:	55                   	push   %rbp
    1412:	48 89 e5             	mov    %rsp,%rbp
    1415:	48 83 ec 10          	sub    $0x10,%rsp
    1419:	89 7d fc             	mov    %edi,-0x4(%rbp)
    141c:	89 75 f8             	mov    %esi,-0x8(%rbp)
    141f:	83 7d fc 01          	cmpl   $0x1,-0x4(%rbp)
    1423:	75 58                	jne    147d <_Z41__static_initialization_and_destruction_0ii+0x70>
    1425:	81 7d f8 ff ff 00 00 	cmpl   $0xffff,-0x8(%rbp)
    142c:	75 4f                	jne    147d <_Z41__static_initialization_and_destruction_0ii+0x70>
  extern wostream wclog;	/// Linked to standard error (buffered)
#endif
  ///@}

  // For construction of filebuffers for cout, cin, cerr, clog et. al.
  static ios_base::Init __ioinit;
    142e:	48 8d 3d 53 2d 00 00 	lea    0x2d53(%rip),%rdi        # 4188 <_ZStL8__ioinit>
    1435:	e8 26 fd ff ff       	callq  1160 <_ZNSt8ios_base4InitC1Ev@plt>
    143a:	48 8d 15 c7 2b 00 00 	lea    0x2bc7(%rip),%rdx        # 4008 <__dso_handle>
    1441:	48 8d 35 40 2d 00 00 	lea    0x2d40(%rip),%rsi        # 4188 <_ZStL8__ioinit>
    1448:	48 8b 05 a9 2b 00 00 	mov    0x2ba9(%rip),%rax        # 3ff8 <_ZNSt8ios_base4InitD1Ev@GLIBCXX_3.4>
    144f:	48 89 c7             	mov    %rax,%rdi
    1452:	e8 a9 fc ff ff       	callq  1100 <__cxa_atexit@plt>
std::vector<std::function<void()>> task;
    1457:	48 8d 3d 12 2d 00 00 	lea    0x2d12(%rip),%rdi        # 4170 <task>
    145e:	e8 b5 00 00 00       	callq  1518 <_ZNSt6vectorISt8functionIFvvEESaIS2_EEC1Ev>
    1463:	48 8d 15 9e 2b 00 00 	lea    0x2b9e(%rip),%rdx        # 4008 <__dso_handle>
    146a:	48 8d 35 ff 2c 00 00 	lea    0x2cff(%rip),%rsi        # 4170 <task>
    1471:	48 8d 3d 64 02 00 00 	lea    0x264(%rip),%rdi        # 16dc <_ZNSt6vectorISt8functionIFvvEESaIS2_EED1Ev>
    1478:	e8 83 fc ff ff       	callq  1100 <__cxa_atexit@plt>
}
    147d:	90                   	nop
    147e:	c9                   	leaveq 
    147f:	c3                   	retq   

0000000000001480 <_GLOBAL__sub_I_cnt>:
    1480:	f3 0f 1e fa          	endbr64 
    1484:	55                   	push   %rbp
    1485:	48 89 e5             	mov    %rsp,%rbp
    1488:	be ff ff 00 00       	mov    $0xffff,%esi
    148d:	bf 01 00 00 00       	mov    $0x1,%edi
    1492:	e8 76 ff ff ff       	callq  140d <_Z41__static_initialization_and_destruction_0ii>
    1497:	5d                   	pop    %rbp
    1498:	c3                   	retq   
    1499:	90                   	nop

000000000000149a <_ZNSt14_Function_baseD1Ev>:
	{ __functor._M_access<_Functor*>() = new _Functor(std::move(__f)); }
      };

    _Function_base() : _M_manager(nullptr) { }

    ~_Function_base()
    149a:	f3 0f 1e fa          	endbr64 
    149e:	55                   	push   %rbp
    149f:	48 89 e5             	mov    %rsp,%rbp
    14a2:	48 83 ec 10          	sub    $0x10,%rsp
    14a6:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    {
      if (_M_manager)
    14aa:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    14ae:	48 8b 40 10          	mov    0x10(%rax),%rax
    14b2:	48 85 c0             	test   %rax,%rax
    14b5:	74 1e                	je     14d5 <_ZNSt14_Function_baseD1Ev+0x3b>
	_M_manager(_M_functor, _M_functor, __destroy_functor);
    14b7:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    14bb:	4c 8b 40 10          	mov    0x10(%rax),%r8
    14bf:	48 8b 4d f8          	mov    -0x8(%rbp),%rcx
    14c3:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    14c7:	ba 03 00 00 00       	mov    $0x3,%edx
    14cc:	48 89 ce             	mov    %rcx,%rsi
    14cf:	48 89 c7             	mov    %rax,%rdi
    14d2:	41 ff d0             	callq  *%r8
    }
    14d5:	90                   	nop
    14d6:	c9                   	leaveq 
    14d7:	c3                   	retq   

00000000000014d8 <_ZNSt12_Vector_baseISt8functionIFvvEESaIS2_EE12_Vector_implD1Ev>:
	  _M_copy_data(__x);
	  __x._M_copy_data(__tmp);
	}
      };

      struct _Vector_impl
    14d8:	f3 0f 1e fa          	endbr64 
    14dc:	55                   	push   %rbp
    14dd:	48 89 e5             	mov    %rsp,%rbp
    14e0:	48 83 ec 10          	sub    $0x10,%rsp
    14e4:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    14e8:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    14ec:	48 89 c7             	mov    %rax,%rdi
    14ef:	e8 70 00 00 00       	callq  1564 <_ZNSaISt8functionIFvvEEED1Ev>
    14f4:	90                   	nop
    14f5:	c9                   	leaveq 
    14f6:	c3                   	retq   
    14f7:	90                   	nop

00000000000014f8 <_ZNSt12_Vector_baseISt8functionIFvvEESaIS2_EEC1Ev>:
      allocator_type
      get_allocator() const _GLIBCXX_NOEXCEPT
      { return allocator_type(_M_get_Tp_allocator()); }

#if __cplusplus >= 201103L
      _Vector_base() = default;
    14f8:	f3 0f 1e fa          	endbr64 
    14fc:	55                   	push   %rbp
    14fd:	48 89 e5             	mov    %rsp,%rbp
    1500:	48 83 ec 10          	sub    $0x10,%rsp
    1504:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    1508:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    150c:	48 89 c7             	mov    %rax,%rdi
    150f:	e8 24 00 00 00       	callq  1538 <_ZNSt12_Vector_baseISt8functionIFvvEESaIS2_EE12_Vector_implC1Ev>
    1514:	90                   	nop
    1515:	c9                   	leaveq 
    1516:	c3                   	retq   
    1517:	90                   	nop

0000000000001518 <_ZNSt6vectorISt8functionIFvvEESaIS2_EEC1Ev>:

      /**
       *  @brief  Creates a %vector with no elements.
       */
#if __cplusplus >= 201103L
      vector() = default;
    1518:	f3 0f 1e fa          	endbr64 
    151c:	55                   	push   %rbp
    151d:	48 89 e5             	mov    %rsp,%rbp
    1520:	48 83 ec 10          	sub    $0x10,%rsp
    1524:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    1528:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    152c:	48 89 c7             	mov    %rax,%rdi
    152f:	e8 c4 ff ff ff       	callq  14f8 <_ZNSt12_Vector_baseISt8functionIFvvEESaIS2_EEC1Ev>
    1534:	90                   	nop
    1535:	c9                   	leaveq 
    1536:	c3                   	retq   
    1537:	90                   	nop

0000000000001538 <_ZNSt12_Vector_baseISt8functionIFvvEESaIS2_EE12_Vector_implC1Ev>:
	_Vector_impl() _GLIBCXX_NOEXCEPT_IF(
    1538:	f3 0f 1e fa          	endbr64 
    153c:	55                   	push   %rbp
    153d:	48 89 e5             	mov    %rsp,%rbp
    1540:	48 83 ec 10          	sub    $0x10,%rsp
    1544:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
	: _Tp_alloc_type()
    1548:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    154c:	48 89 c7             	mov    %rax,%rdi
    154f:	e8 82 00 00 00       	callq  15d6 <_ZNSaISt8functionIFvvEEEC1Ev>
    1554:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1558:	48 89 c7             	mov    %rax,%rdi
    155b:	e8 96 00 00 00       	callq  15f6 <_ZNSt12_Vector_baseISt8functionIFvvEESaIS2_EE17_Vector_impl_dataC1Ev>
	{ }
    1560:	90                   	nop
    1561:	c9                   	leaveq 
    1562:	c3                   	retq   
    1563:	90                   	nop

0000000000001564 <_ZNSaISt8functionIFvvEEED1Ev>:

      template<typename _Tp1>
	_GLIBCXX20_CONSTEXPR
	allocator(const allocator<_Tp1>&) _GLIBCXX_NOTHROW { }

      ~allocator() _GLIBCXX_NOTHROW { }
    1564:	f3 0f 1e fa          	endbr64 
    1568:	55                   	push   %rbp
    1569:	48 89 e5             	mov    %rsp,%rbp
    156c:	48 83 ec 10          	sub    $0x10,%rsp
    1570:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    1574:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1578:	48 89 c7             	mov    %rax,%rdi
    157b:	e8 a8 00 00 00       	callq  1628 <_ZN9__gnu_cxx13new_allocatorISt8functionIFvvEEED1Ev>
    1580:	90                   	nop
    1581:	c9                   	leaveq 
    1582:	c3                   	retq   
    1583:	90                   	nop

0000000000001584 <_ZNSt12_Vector_baseISt8functionIFvvEESaIS2_EED1Ev>:
      ~_Vector_base() _GLIBCXX_NOEXCEPT
    1584:	f3 0f 1e fa          	endbr64 
    1588:	55                   	push   %rbp
    1589:	48 89 e5             	mov    %rsp,%rbp
    158c:	48 83 ec 10          	sub    $0x10,%rsp
    1590:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
		      _M_impl._M_end_of_storage - _M_impl._M_start);
    1594:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1598:	48 8b 50 10          	mov    0x10(%rax),%rdx
    159c:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    15a0:	48 8b 00             	mov    (%rax),%rax
    15a3:	48 29 c2             	sub    %rax,%rdx
    15a6:	48 89 d0             	mov    %rdx,%rax
    15a9:	48 c1 f8 05          	sar    $0x5,%rax
	_M_deallocate(_M_impl._M_start,
    15ad:	48 89 c2             	mov    %rax,%rdx
    15b0:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    15b4:	48 8b 08             	mov    (%rax),%rcx
    15b7:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    15bb:	48 89 ce             	mov    %rcx,%rsi
    15be:	48 89 c7             	mov    %rax,%rdi
    15c1:	e8 72 00 00 00       	callq  1638 <_ZNSt12_Vector_baseISt8functionIFvvEESaIS2_EE13_M_deallocateEPS2_m>
      }
    15c6:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    15ca:	48 89 c7             	mov    %rax,%rdi
    15cd:	e8 06 ff ff ff       	callq  14d8 <_ZNSt12_Vector_baseISt8functionIFvvEESaIS2_EE12_Vector_implD1Ev>
    15d2:	90                   	nop
    15d3:	c9                   	leaveq 
    15d4:	c3                   	retq   
    15d5:	90                   	nop

00000000000015d6 <_ZNSaISt8functionIFvvEEEC1Ev>:
      allocator() _GLIBCXX_NOTHROW { }
    15d6:	f3 0f 1e fa          	endbr64 
    15da:	55                   	push   %rbp
    15db:	48 89 e5             	mov    %rsp,%rbp
    15de:	48 83 ec 10          	sub    $0x10,%rsp
    15e2:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    15e6:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    15ea:	48 89 c7             	mov    %rax,%rdi
    15ed:	e8 80 00 00 00       	callq  1672 <_ZN9__gnu_cxx13new_allocatorISt8functionIFvvEEEC1Ev>
    15f2:	90                   	nop
    15f3:	c9                   	leaveq 
    15f4:	c3                   	retq   
    15f5:	90                   	nop

00000000000015f6 <_ZNSt12_Vector_baseISt8functionIFvvEESaIS2_EE17_Vector_impl_dataC1Ev>:
	_Vector_impl_data() _GLIBCXX_NOEXCEPT
    15f6:	f3 0f 1e fa          	endbr64 
    15fa:	55                   	push   %rbp
    15fb:	48 89 e5             	mov    %rsp,%rbp
    15fe:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
	: _M_start(), _M_finish(), _M_end_of_storage()
    1602:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1606:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
    160d:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1611:	48 c7 40 08 00 00 00 	movq   $0x0,0x8(%rax)
    1618:	00 
    1619:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    161d:	48 c7 40 10 00 00 00 	movq   $0x0,0x10(%rax)
    1624:	00 
	{ }
    1625:	90                   	nop
    1626:	5d                   	pop    %rbp
    1627:	c3                   	retq   

0000000000001628 <_ZN9__gnu_cxx13new_allocatorISt8functionIFvvEEED1Ev>:

      template<typename _Tp1>
	_GLIBCXX20_CONSTEXPR
	new_allocator(const new_allocator<_Tp1>&) _GLIBCXX_USE_NOEXCEPT { }

      ~new_allocator() _GLIBCXX_USE_NOEXCEPT { }
    1628:	f3 0f 1e fa          	endbr64 
    162c:	55                   	push   %rbp
    162d:	48 89 e5             	mov    %rsp,%rbp
    1630:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    1634:	90                   	nop
    1635:	5d                   	pop    %rbp
    1636:	c3                   	retq   
    1637:	90                   	nop

0000000000001638 <_ZNSt12_Vector_baseISt8functionIFvvEESaIS2_EE13_M_deallocateEPS2_m>:
      _M_deallocate(pointer __p, size_t __n)
    1638:	f3 0f 1e fa          	endbr64 
    163c:	55                   	push   %rbp
    163d:	48 89 e5             	mov    %rsp,%rbp
    1640:	48 83 ec 20          	sub    $0x20,%rsp
    1644:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    1648:	48 89 75 f0          	mov    %rsi,-0x10(%rbp)
    164c:	48 89 55 e8          	mov    %rdx,-0x18(%rbp)
	if (__p)
    1650:	48 83 7d f0 00       	cmpq   $0x0,-0x10(%rbp)
    1655:	74 17                	je     166e <_ZNSt12_Vector_baseISt8functionIFvvEESaIS2_EE13_M_deallocateEPS2_m+0x36>
	  _Tr::deallocate(_M_impl, __p, __n);
    1657:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    165b:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
    165f:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
    1663:	48 89 ce             	mov    %rcx,%rsi
    1666:	48 89 c7             	mov    %rax,%rdi
    1669:	e8 13 00 00 00       	callq  1681 <_ZNSt16allocator_traitsISaISt8functionIFvvEEEE10deallocateERS3_PS2_m>
      }
    166e:	90                   	nop
    166f:	c9                   	leaveq 
    1670:	c3                   	retq   
    1671:	90                   	nop

0000000000001672 <_ZN9__gnu_cxx13new_allocatorISt8functionIFvvEEEC1Ev>:
      new_allocator() _GLIBCXX_USE_NOEXCEPT { }
    1672:	f3 0f 1e fa          	endbr64 
    1676:	55                   	push   %rbp
    1677:	48 89 e5             	mov    %rsp,%rbp
    167a:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    167e:	90                   	nop
    167f:	5d                   	pop    %rbp
    1680:	c3                   	retq   

0000000000001681 <_ZNSt16allocator_traitsISaISt8functionIFvvEEEE10deallocateERS3_PS2_m>:
       *  @param  __n  The number of objects space was allocated for.
       *
       *  Calls <tt> a.deallocate(p, n) </tt>
      */
      static void
      deallocate(allocator_type& __a, pointer __p, size_type __n)
    1681:	f3 0f 1e fa          	endbr64 
    1685:	55                   	push   %rbp
    1686:	48 89 e5             	mov    %rsp,%rbp
    1689:	48 83 ec 20          	sub    $0x20,%rsp
    168d:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    1691:	48 89 75 f0          	mov    %rsi,-0x10(%rbp)
    1695:	48 89 55 e8          	mov    %rdx,-0x18(%rbp)
      { __a.deallocate(__p, __n); }
    1699:	48 8b 55 e8          	mov    -0x18(%rbp),%rdx
    169d:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
    16a1:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    16a5:	48 89 ce             	mov    %rcx,%rsi
    16a8:	48 89 c7             	mov    %rax,%rdi
    16ab:	e8 04 00 00 00       	callq  16b4 <_ZN9__gnu_cxx13new_allocatorISt8functionIFvvEEE10deallocateEPS3_m>
    16b0:	90                   	nop
    16b1:	c9                   	leaveq 
    16b2:	c3                   	retq   
    16b3:	90                   	nop

00000000000016b4 <_ZN9__gnu_cxx13new_allocatorISt8functionIFvvEEE10deallocateEPS3_m>:
	return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp)));
      }

      // __p is not permitted to be a null pointer.
      void
      deallocate(pointer __p, size_type)
    16b4:	f3 0f 1e fa          	endbr64 
    16b8:	55                   	push   %rbp
    16b9:	48 89 e5             	mov    %rsp,%rbp
    16bc:	48 83 ec 20          	sub    $0x20,%rsp
    16c0:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    16c4:	48 89 75 f0          	mov    %rsi,-0x10(%rbp)
    16c8:	48 89 55 e8          	mov    %rdx,-0x18(%rbp)
	  {
	    ::operator delete(__p, std::align_val_t(alignof(_Tp)));
	    return;
	  }
#endif
	::operator delete(__p);
    16cc:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
    16d0:	48 89 c7             	mov    %rax,%rdi
    16d3:	e8 38 fa ff ff       	callq  1110 <_ZdlPv@plt>
      }
    16d8:	90                   	nop
    16d9:	c9                   	leaveq 
    16da:	c3                   	retq   
    16db:	90                   	nop

00000000000016dc <_ZNSt6vectorISt8functionIFvvEESaIS2_EED1Ev>:
       *  The dtor only erases the elements, and note that if the
       *  elements themselves are pointers, the pointed-to memory is
       *  not touched in any way.  Managing the pointer is the user's
       *  responsibility.
       */
      ~vector() _GLIBCXX_NOEXCEPT
    16dc:	f3 0f 1e fa          	endbr64 
    16e0:	55                   	push   %rbp
    16e1:	48 89 e5             	mov    %rsp,%rbp
    16e4:	48 83 ec 10          	sub    $0x10,%rsp
    16e8:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
      {
	std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
		      _M_get_Tp_allocator());
    16ec:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    16f0:	48 89 c7             	mov    %rax,%rdi
    16f3:	e8 2c 00 00 00       	callq  1724 <_ZNSt12_Vector_baseISt8functionIFvvEESaIS2_EE19_M_get_Tp_allocatorEv>
    16f8:	48 89 c2             	mov    %rax,%rdx
	std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
    16fb:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    16ff:	48 8b 48 08          	mov    0x8(%rax),%rcx
    1703:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1707:	48 8b 00             	mov    (%rax),%rax
    170a:	48 89 ce             	mov    %rcx,%rsi
    170d:	48 89 c7             	mov    %rax,%rdi
    1710:	e8 21 00 00 00       	callq  1736 <_ZSt8_DestroyIPSt8functionIFvvEES2_EvT_S4_RSaIT0_E>
	_GLIBCXX_ASAN_ANNOTATE_BEFORE_DEALLOC;
      }
    1715:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1719:	48 89 c7             	mov    %rax,%rdi
    171c:	e8 63 fe ff ff       	callq  1584 <_ZNSt12_Vector_baseISt8functionIFvvEESaIS2_EED1Ev>
    1721:	90                   	nop
    1722:	c9                   	leaveq 
    1723:	c3                   	retq   

0000000000001724 <_ZNSt12_Vector_baseISt8functionIFvvEESaIS2_EE19_M_get_Tp_allocatorEv>:
      _M_get_Tp_allocator() _GLIBCXX_NOEXCEPT
    1724:	f3 0f 1e fa          	endbr64 
    1728:	55                   	push   %rbp
    1729:	48 89 e5             	mov    %rsp,%rbp
    172c:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
      { return this->_M_impl; }
    1730:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1734:	5d                   	pop    %rbp
    1735:	c3                   	retq   

0000000000001736 <_ZSt8_DestroyIPSt8functionIFvvEES2_EvT_S4_RSaIT0_E>:
	__traits::destroy(__alloc, std::__addressof(*__first));
    }

  template<typename _ForwardIterator, typename _Tp>
    inline void
    _Destroy(_ForwardIterator __first, _ForwardIterator __last,
    1736:	f3 0f 1e fa          	endbr64 
    173a:	55                   	push   %rbp
    173b:	48 89 e5             	mov    %rsp,%rbp
    173e:	48 83 ec 20          	sub    $0x20,%rsp
    1742:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    1746:	48 89 75 f0          	mov    %rsi,-0x10(%rbp)
    174a:	48 89 55 e8          	mov    %rdx,-0x18(%rbp)
	     allocator<_Tp>&)
    {
      _Destroy(__first, __last);
    174e:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
    1752:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1756:	48 89 d6             	mov    %rdx,%rsi
    1759:	48 89 c7             	mov    %rax,%rdi
    175c:	e8 03 00 00 00       	callq  1764 <_ZSt8_DestroyIPSt8functionIFvvEEEvT_S4_>
    }
    1761:	90                   	nop
    1762:	c9                   	leaveq 
    1763:	c3                   	retq   

0000000000001764 <_ZSt8_DestroyIPSt8functionIFvvEEEvT_S4_>:
    _Destroy(_ForwardIterator __first, _ForwardIterator __last)
    1764:	f3 0f 1e fa          	endbr64 
    1768:	55                   	push   %rbp
    1769:	48 89 e5             	mov    %rsp,%rbp
    176c:	48 83 ec 10          	sub    $0x10,%rsp
    1770:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    1774:	48 89 75 f0          	mov    %rsi,-0x10(%rbp)
	__destroy(__first, __last);
    1778:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
    177c:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    1780:	48 89 d6             	mov    %rdx,%rsi
    1783:	48 89 c7             	mov    %rax,%rdi
    1786:	e8 03 00 00 00       	callq  178e <_ZNSt12_Destroy_auxILb0EE9__destroyIPSt8functionIFvvEEEEvT_S6_>
    }
    178b:	90                   	nop
    178c:	c9                   	leaveq 
    178d:	c3                   	retq   

000000000000178e <_ZNSt12_Destroy_auxILb0EE9__destroyIPSt8functionIFvvEEEEvT_S6_>:
        __destroy(_ForwardIterator __first, _ForwardIterator __last)
    178e:	f3 0f 1e fa          	endbr64 
    1792:	55                   	push   %rbp
    1793:	48 89 e5             	mov    %rsp,%rbp
    1796:	48 83 ec 10          	sub    $0x10,%rsp
    179a:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    179e:	48 89 75 f0          	mov    %rsi,-0x10(%rbp)
	  for (; __first != __last; ++__first)
    17a2:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    17a6:	48 3b 45 f0          	cmp    -0x10(%rbp),%rax
    17aa:	74 1b                	je     17c7 <_ZNSt12_Destroy_auxILb0EE9__destroyIPSt8functionIFvvEEEEvT_S6_+0x39>
	    std::_Destroy(std::__addressof(*__first));
    17ac:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    17b0:	48 89 c7             	mov    %rax,%rdi
    17b3:	e8 12 00 00 00       	callq  17ca <_ZSt11__addressofISt8functionIFvvEEEPT_RS3_>
    17b8:	48 89 c7             	mov    %rax,%rdi
    17bb:	e8 3b 00 00 00       	callq  17fb <_ZSt8_DestroyISt8functionIFvvEEEvPT_>
	  for (; __first != __last; ++__first)
    17c0:	48 83 45 f8 20       	addq   $0x20,-0x8(%rbp)
    17c5:	eb db                	jmp    17a2 <_ZNSt12_Destroy_auxILb0EE9__destroyIPSt8functionIFvvEEEEvT_S6_+0x14>
	}
    17c7:	90                   	nop
    17c8:	c9                   	leaveq 
    17c9:	c3                   	retq   

00000000000017ca <_ZSt11__addressofISt8functionIFvvEEEPT_RS3_>:
   *  @brief Same as C++11 std::addressof
   *  @ingroup utilities
   */
  template<typename _Tp>
    inline _GLIBCXX_CONSTEXPR _Tp*
    __addressof(_Tp& __r) _GLIBCXX_NOEXCEPT
    17ca:	f3 0f 1e fa          	endbr64 
    17ce:	55                   	push   %rbp
    17cf:	48 89 e5             	mov    %rsp,%rbp
    17d2:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    { return __builtin_addressof(__r); }
    17d6:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    17da:	5d                   	pop    %rbp
    17db:	c3                   	retq   

00000000000017dc <_ZNSt8functionIFvvEED1Ev>:
   *  @ingroup functors
   *
   *  Polymorphic function wrapper.
   */
  template<typename _Res, typename... _ArgTypes>
    class function<_Res(_ArgTypes...)>
    17dc:	f3 0f 1e fa          	endbr64 
    17e0:	55                   	push   %rbp
    17e1:	48 89 e5             	mov    %rsp,%rbp
    17e4:	48 83 ec 10          	sub    $0x10,%rsp
    17e8:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    17ec:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    17f0:	48 89 c7             	mov    %rax,%rdi
    17f3:	e8 a2 fc ff ff       	callq  149a <_ZNSt14_Function_baseD1Ev>
    17f8:	90                   	nop
    17f9:	c9                   	leaveq 
    17fa:	c3                   	retq   

00000000000017fb <_ZSt8_DestroyISt8functionIFvvEEEvPT_>:
    _Destroy(_Tp* __pointer)
    17fb:	f3 0f 1e fa          	endbr64 
    17ff:	55                   	push   %rbp
    1800:	48 89 e5             	mov    %rsp,%rbp
    1803:	48 83 ec 10          	sub    $0x10,%rsp
    1807:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
    { __pointer->~_Tp(); }
    180b:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
    180f:	48 89 c7             	mov    %rax,%rdi
    1812:	e8 c5 ff ff ff       	callq  17dc <_ZNSt8functionIFvvEED1Ev>
    1817:	90                   	nop
    1818:	c9                   	leaveq 
    1819:	c3                   	retq   
    181a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

0000000000001820 <__libc_csu_init>:
    1820:	f3 0f 1e fa          	endbr64 
    1824:	41 57                	push   %r15
    1826:	4c 8d 3d 1b 25 00 00 	lea    0x251b(%rip),%r15        # 3d48 <__frame_dummy_init_array_entry>
    182d:	41 56                	push   %r14
    182f:	49 89 d6             	mov    %rdx,%r14
    1832:	41 55                	push   %r13
    1834:	49 89 f5             	mov    %rsi,%r13
    1837:	41 54                	push   %r12
    1839:	41 89 fc             	mov    %edi,%r12d
    183c:	55                   	push   %rbp
    183d:	48 8d 2d 14 25 00 00 	lea    0x2514(%rip),%rbp        # 3d58 <__do_global_dtors_aux_fini_array_entry>
    1844:	53                   	push   %rbx
    1845:	4c 29 fd             	sub    %r15,%rbp
    1848:	48 83 ec 08          	sub    $0x8,%rsp
    184c:	e8 af f7 ff ff       	callq  1000 <_init>
    1851:	48 c1 fd 03          	sar    $0x3,%rbp
    1855:	74 1f                	je     1876 <__libc_csu_init+0x56>
    1857:	31 db                	xor    %ebx,%ebx
    1859:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
    1860:	4c 89 f2             	mov    %r14,%rdx
    1863:	4c 89 ee             	mov    %r13,%rsi
    1866:	44 89 e7             	mov    %r12d,%edi
    1869:	41 ff 14 df          	callq  *(%r15,%rbx,8)
    186d:	48 83 c3 01          	add    $0x1,%rbx
    1871:	48 39 dd             	cmp    %rbx,%rbp
    1874:	75 ea                	jne    1860 <__libc_csu_init+0x40>
    1876:	48 83 c4 08          	add    $0x8,%rsp
    187a:	5b                   	pop    %rbx
    187b:	5d                   	pop    %rbp
    187c:	41 5c                	pop    %r12
    187e:	41 5d                	pop    %r13
    1880:	41 5e                	pop    %r14
    1882:	41 5f                	pop    %r15
    1884:	c3                   	retq   
    1885:	66 66 2e 0f 1f 84 00 	data16 nopw %cs:0x0(%rax,%rax,1)
    188c:	00 00 00 00 

0000000000001890 <__libc_csu_fini>:
    1890:	f3 0f 1e fa          	endbr64 
    1894:	c3                   	retq   

Disassembly of section .fini:

0000000000001898 <_fini>:
    1898:	f3 0f 1e fa          	endbr64 
    189c:	48 83 ec 08          	sub    $0x8,%rsp
    18a0:	48 83 c4 08          	add    $0x8,%rsp
    18a4:	c3                   	retq   
